package com.zytlifeservice.domain.pay;

import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import java.util.Date;

/**
 * Created by Administrator on 2017/6/14.
 */
@MappedSuperclass
public class BaseAirplaneAndTrianOrder {
    public static final String STATUS_SUCCESS = "success";
    public static final String STATUS_INIT = "init";
    public static final String STATUS_FAIL = "fail";
    public static final String STATUS_WAIT = "wait";
    public static final String STATUS_EXCEPTION = "exception";

    public static final int PAY_TYPE_ALIPAY = 0;
    public static final int PAY_TYPE_WXPAY = 1;

    public static final int TYPE_TRAIN = 7;
    public static final int TYPE_AIR = 8;


    @Id
    @GeneratedValue
    public Long id;
    //------------------------------------------自定义-------------------------------------------------\
    public Long userId;  //用户ID

    public String outTradeNo;  //外部订单号，和支付宝订单统一

    public String payResult;  //订单结果状态  success,fail,exception  异常需人工介入

    public String failReason;  //订单失败原因

    public int payType;  //订单支付类型

    //---------------------------------------千米公共字段--------------------------------------------------
    public String tradeNo;//订单主编号

    public Integer state;//订单展示状态 0:交易中,9:出票失败,1:出票成功,6:退票中,7:退票失败,10:已退票,11:已退款

    public String etime;//订单完成时间

    public Integer billState;//订单付款状态 0 未付款1 已付款

    public String startTime;//发车时间

    public String passagers;//乘客信息

    public String contactName;//联系人

    public String contactTel;//联系电话

    public String date;//出发日期

    public String recevieStation;//抵达站

    public String startStation;//出发站

    public String totalPayCash;//实际支付的价格

    public Integer orderType;//票务类型 1:火车票 2:飞机票 3:汽车票

    public Date orderCreateTime;

    public Date getOrderCreateTime() {
        return orderCreateTime;
    }

    public void setOrderCreateTime(Date orderCreateTime) {
        this.orderCreateTime = orderCreateTime;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getOutTradeNo() {
        return outTradeNo;
    }

    public void setOutTradeNo(String outTradeNo) {
        this.outTradeNo = outTradeNo;
    }

    public String getPayResult() {
        return payResult;
    }

    public void setPayResult(String payResult) {
        this.payResult = payResult;
    }

    public String getFailReason() {
        return failReason;
    }

    public void setFailReason(String failReason) {
        this.failReason = failReason;
    }

    public String getTradeNo() {
        return tradeNo;
    }

    public void setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
    }

    public String getEtime() {
        return etime;
    }

    public void setEtime(String etime) {
        this.etime = etime;
    }

    public Integer getBillState() {
        return billState;
    }

    public void setBillState(Integer billState) {
        this.billState = billState;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getRecevieStation() {
        return recevieStation;
    }

    public void setRecevieStation(String recevieStation) {
        this.recevieStation = recevieStation;
    }

    public String getStartStation() {
        return startStation;
    }

    public void setStartStation(String startStation) {
        this.startStation = startStation;
    }

    public String getTotalPayCash() {
        return totalPayCash;
    }

    public void setTotalPayCash(String totalPayCash) {
        this.totalPayCash = totalPayCash;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public String getPassagers() {
        return passagers;
    }

    public void setPassagers(String passagers) {
        this.passagers = passagers;
    }

    public String getContactName() {
        return contactName;
    }

    public void setContactName(String contactName) {
        this.contactName = contactName;
    }

    public String getContactTel() {
        return contactTel;
    }

    public void setContactTel(String contactTel) {
        this.contactTel = contactTel;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public int getPayType() {
        return payType;
    }

    public void setPayType(int payType) {
        this.payType = payType;
    }

    @Override
    public String toString() {
        return "BaseAirplaneAndTrianOrder{" +
                "id=" + id +
                ", userId=" + userId +
                ", outTradeNo='" + outTradeNo + '\'' +
                ", payResult='" + payResult + '\'' +
                ", failReason='" + failReason + '\'' +
                ", payType=" + payType +
                ", tradeNo='" + tradeNo + '\'' +
                ", state=" + state +
                ", etime='" + etime + '\'' +
                ", billState=" + billState +
                ", startTime='" + startTime + '\'' +
                ", passagers='" + passagers + '\'' +
                ", contactName='" + contactName + '\'' +
                ", contactTel='" + contactTel + '\'' +
                ", date='" + date + '\'' +
                ", recevieStation='" + recevieStation + '\'' +
                ", startStation='" + startStation + '\'' +
                ", totalPayCash='" + totalPayCash + '\'' +
                ", orderType=" + orderType +
                '}';
    }
}
